/*
 * SalaRemota.h
 *
 *  Created on: 28/07/2014
 *      Author: migue
 */

#ifndef SALAREMOTA_H_
#define SALAREMOTA_H_

#include "../defines.h"
#include "SalaDePersonas.h"
#include "../ipcRemoto/MemCompSala.h"

class SalaRemota : public SalaDePersonas {
public:
	SalaRemota(int numSala, Tipos::LugarDeSala lugar,int idCliente, int idBroker);

	virtual bool hayPersonas();

	virtual void reservarLugar(int idPersona);

	virtual void colocarEnReserva(int idPersona);

	virtual int verProximaPersona();

	virtual void sacarPersona(int idPersona);

	virtual int cantidadDePersonas();

	virtual bool salaLlena();



	virtual Tipos::EstadoBUS estadoBUS();


	virtual void BUSsubiendoPersonas();

	virtual void BUSDespierto();

	virtual void BUSbajandoPersonas();

	virtual void BUSDormido();



	virtual void inicializar();

	virtual void destruir();


	virtual ~SalaRemota();
private:
	int _idShm;

	MemCompSala _mcs;

	int consultarId();

};

#endif /* SALAREMOTA_H_ */
